A gateway (e.g., a residential gateway (RGW) or other communication device) is computer that connects a first network (e.g., a local area network (LAN)) to a second network (e.g., a wide area network (WAN)). That is, the gateway functions to receive traffic from a device connected to the first network and retransmit the traffic to a device connected to the second network and vice-versa.
Traffic received at a gateway may consist of two types: (1) high-priority (HP) traffic (e.g. Internet Protocol (IP) television traffic (IPTV), IP telephony, etc.) and (2) low-priority (LP) traffic (e.g. transmission control protocol (TCP) packets). Since HP traffic is sensitive to delay and packet loss, it is generally desirable to guarantee a specific bandwidth for HP traffic (e.g., to guarantee that the gateway will retransmit HP traffic at a certain rate at least). LP traffic, on the other hand, generally does not require a guaranteed bandwidth. One way to guarantee a specific bandwidth for HP traffic is to dedicate certain gateway resources (e.g., a certain amount of gateway bandwidth) to HP traffic such that these dedicated resources can not be used by LP traffic. A problem with this solution is that it is inefficient when the rate at which HP traffic arrives at the gateway is less than bandwidth dedicated to the HP traffic. This is inefficient because a portion of the dedicated bandwidth would go unused.
What is desired are improved systems and methods for controlling data transmission rates.